<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:f="http://java.sun.com/jsf/core">

    <h:body >
        <ui:composition template="./../plantilla/plantillaGeneral.xhtml">
            <ui:define name="title">
                #{general.tituloRol}
            </ui:define>
            <ui:define name="content">
                <h:form id="frmRoles" >
                    <p:growl id="growl" />
                    <h:panelGrid id="pngRoles001" columns="1">
                        <h:outputText id="outTitutloRoles001" value="#{general.tituloRol}" styleClass="texto_subtitulo"/>
                    </h:panelGrid>
                    <p:panel id="pnlRol001" header=" #{general.tituloRol}">
                        <p:panel id="pnlFiltroR" header="#{general.filtrosBusqueda}">
                            <h:panelGrid id="pngFiltro" columns="8">
                                <h:outputText id="outFiltro" value="#{general.filtro}:" styleClass="texto_negrita_derecha"/>
                                <h:selectOneMenu id="slmFiltro" value="#{ingresoRoles.filtroBusqueda}" disabled="#{ingresoRoles.visibleForm}">
                                    <f:selectItem id="sliCodigo" itemValue="C" itemLabel="#{general.codigo}"/>
                                    <f:selectItem id="sliNombre" itemValue="N" itemLabel="#{general.nombre}"/>
                                    <p:ajax id="supFiltros" listener="#{ingresoRoles.inicializaFiltros()}"
                                            event="change" update="pnlFiltroR, dttRoles" />
                                </h:selectOneMenu>
                                <h:panelGroup id="pngFiltrosBusqueda">
                                    <h:inputText id="intCodigo" title="#{general.codigo}" maxlength="9"
                                                 value="#{ingresoRoles.idRol}" disabled="#{ingresoRoles.visibleForm}"
                                                 rendered="#{ingresoRoles.filtroBusqueda eq 'C'}">
                                        <f:convertNumber for="intCodPagina" integerOnly="true" />
                                        <p:ajax event="change" update="pngFiltrosBusqueda"/>
                                    </h:inputText>
                                    <h:inputText id="intNomRol" value="#{ingresoRoles.nombre}" title="#{general.nombre}"
                                                 rendered="#{ingresoRoles.filtroBusqueda eq 'N'}" disabled="#{ingresoRoles.visibleForm}"
                                                 maxlength="100">
                                        <p:ajax event="change" update="pngFiltrosBusqueda"/>
                                    </h:inputText>
                                </h:panelGroup>
                                <p:commandButton id="btnBuscar"
                                                 value="#{general.buscar}"
                                                 immediate="true" 
                                                 title="#{general.titleBtnRol}"
                                                 actionListener="#{ingresoRoles.buscarRol}"
                                                 update="pnlFiltroR,dttRoles,growl"
                                                 disabled="#{ingresoRoles.visibleForm}"/>
                            </h:panelGrid>
                        </p:panel>
                        <p:spacer height="10"/>
                        <p:panel id="pnlResultadoRol" header="#{general.resultadoBusqueda}">
                            <p:dataTable id="dttRoles"
                                         var="orden"
                                         emptyMessage="#{general.noDatos}"
                                         value="#{ingresoRoles.listaRoles}"
                                         paginator="true" rows="10">
                                <f:facet name="header">
                                    <h:outputText id="outHeadRoles"
                                                  value="#{general.tituloRol}"/>
                                </f:facet>
                                <p:column id="clmCodRol"
                                          style="width: 90px" >
                                    <f:facet name="header">
                                        <h:outputText id="outClmCodRol" 
                                                      value="#{general.codigo}"
                                                      title="#{general.codigo}"/>
                                    </f:facet>
                                    <h:outputText id="outCodSec"
                                                  value="#{orden.idRol}"/>
                                </p:column>
                                <p:column id="clmNombre"
                                          style="width: 400px">
                                    <f:facet name="header">
                                        <h:outputText id="outClmNombre" 
                                                      value="#{general.nombre}"
                                                      title="#{general.nombre}"/>
                                    </f:facet>
                                    <h:outputText id="outCNumPro" 
                                                  value="#{orden.nombre}"/>
                                </p:column>
                                <p:column id="clmModificar" headerText="#{general.acciones}"
                                          style="width: 140px">
                                    <p:commandButton id="btnModificacionDetalle"
                                                     title="#{general.titleBtnModificar}" 
                                                     value="#{general.btnModificar}"  update="frmRoles,pngRoles002"
                                                     actionListener="#{ingresoRoles.seleccionarRol}"
                                                     disabled="#{ingresoRoles.visibleForm}">
                                        <f:attribute name="rol" value="#{orden}"/>
                                    </p:commandButton>
                                    <p:spacer height="3"/>
                                    <p:commandButton id="btnEliminarDetalle" 
                                                     title="#{general.titleBtnEliminar}" 
                                                     value="#{general.eliminar}" update="frmRoles,dttRoles"
                                                     actionListener="#{ingresoRoles.seleccionarRolElimina}"
                                                     disabled="#{ingresoRoles.visibleForm}">
                                        <f:attribute name="rol" value="#{orden}"/>
                                    </p:commandButton>
                                </p:column>
                            </p:dataTable>
                        </p:panel>
                        <p:spacer height="5"/>
                        <h:panelGrid id="Nuevo" columns="1">
                            <p:commandButton id="btnNuevo"
                                             value="#{general.nuevo}"
                                             immediate="true"
                                             ajax="true" update="frmRoles,pngRoles002"
                                             title="#{general.nuevo}"
                                             actionListener="#{ingresoRoles.nuevo}">
                            </p:commandButton>
                        </h:panelGrid>

                        <p:spacer height="5"/>
                        <p:panel id="pngRoles002" 
                                 header="#{ingresoRoles.titulo}"
                                 visible="#{ingresoRoles.visibleForm}">
                            <p:fieldset>
                                <h:panelGrid id="pngRol"
                                             columns="2">
                                    <h:outputText id="outTituloNombreRol"
                                                  styleClass="texto_negrita"
                                                  value="#{general.nombre}: "/>
                                    <h:inputText id="inpNombreRol"
                                                 value="#{ingresoRoles.rol.nombre}"
                                                 maxlength="100" size="100">
                                        <p:ajax event="change" update="inpNombreRol,pngRol"/>
                                    </h:inputText>
                                </h:panelGrid>
                            </p:fieldset>
                            <h:panelGrid id="pngBtnRol"
                                         columns="2">

                                <p:commandButton id="btnGrabar"
                                                 value="#{general.guardar}"
                                                 immediate="true"
                                                 ajax="true"
                                                 update="frmRoles,dttRoles"
                                                 title="#{general.guardar}"
                                                 actionListener="#{ingresoRoles.grabar}"/>
                                <p:commandButton id="btnCancelar"
                                                 value="#{general.cancelar}"
                                                 ajax="false"
                                                 title="#{general.cancelar}"
                                                 actionListener="#{ingresoRoles.cancela}"/>
                            </h:panelGrid>
                        </p:panel>
                    </p:panel>
                </h:form>
            </ui:define>
        </ui:composition>
    </h:body>
</html>